


//退出登录清理session
$("#eliminate").click(function (){
    console.log("点击了退出登录");
    $.ajax({
        type:'post',
        url:'/ind/delete',
        dataType:'json',
        success:function(res){
            layer.msg(res.msg);
            window.location = 'index.html';
        }
    })

});

//用户的信息
var signId= localStorage.getItem("loginUserId");
$.ajax({
    type:'post',
    url:'/ind/obtain',
    data:{id:signId},
    dataType:'json',
    success:function(res){
        let ll = res.ll;

        console.log(ll);
        $("#userName").text(ll.userName);
        let userJurition = ll.userJurition;
        if (userJurition == "1"){
            $("#userJurition").text("用户");
        }else  if (userJurition == "2"){
            $("#userJurition").text("教师");
        }else  if (userJurition == "3"){
            $("#userJurition").text("管理员");
        }
    }
})




// 导航菜单的间隔像素
var menuCell = 5;
layui.use('element', function () {
    var element = layui.element;
    var $ = layui.jquery;


    //获取所有的菜单
    $.ajax({
        type: "GET",
        url: "/ind/getNavigation",
        dataType: "json",
        success: function (data) {
            console.log(data)
            var liStr = "";
            // 遍历生成主菜单
            for (var i = 0; i < data.length; i++) {
                //console.log("--> "+JSON.stringify(data[i]));
                // 判断是否存在子菜单
                if (data[i].childMenus != null && data[i].childMenus.length > 0) {
                    // console.log("--> " + JSON.stringify(data[i].childMenus));
                    liStr += "<li class=\"layui-nav-item\"><a class=\"\" href=\"javascript:;\" data-src=\"" + data[i].url + "\" data-menuid=\"" + data[i].menuId + "\" data-title=\"" + data[i].name + "\">" + data[i].name + "</a>\n" +
                        "<dl class=\"layui-nav-child\">\n";
                    // 遍历获取子菜单
                    for (var k = 0; k < data[i].childMenus.length; k++) {
                        liStr += getChildMenu(data[i].childMenus[k], 0);
                    }
                    liStr += "</dl></li>";
                } else {
                    liStr += "<li class=\"layui-nav-item\"><a class=\"site-demo-active\" data-src=\"" + data[i].url + "\" data-menuid=\"" + data[i].menuId + "\" data-title=\"" + data[i].name + "\">" + data[i].name + "</a></li>";
                }
            };
            $("#navBarId").html("<ul class=\"layui-nav layui-nav-tree\"  lay-filter=\"test\">\n" + liStr + "</ul>");
            element.init();
        },
        error: function (jqXHR) {
            //  layer aler("发生错误：" + jqXHR.status);
        }
    });


});

// 递归生成子菜单
function getChildMenu(subMenu, num) {
    // console.log("num: " + num);
    num++;
    var subStr = "";
    if (subMenu.childMenus != null && subMenu.childMenus.length > 0) {
        subStr += "<dd><ul><li class=\"layui-nav-item\" ><a style=\"margin-Left:" + num * menuCell + "px\" href=\"javascript:;\" data-src=\"" + subMenu.url + "\" data-menuid=\"" + subMenu.menuId + "\" data-title=\"" + subMenu.name + "\">" + subMenu.name + "</a>" +
            "<dl class=\"layui-nav-child\">\n";
        for (var j = 0; j < subMenu.childMenus.length; j++) {
            subStr += getChildMenu(subMenu.childMenus[j], num);
        }
        subStr += "</dl></li></ul></dd>";
    } else {
        subStr += "<dd><a style=\"margin-Left:" + num * menuCell + "px\" class=\"site-demo-active\" data-src=\"" + subMenu.url + "\" data-menuid=\"" + subMenu.menuId + "\" data-title=\"" + subMenu.name + "\">" + subMenu.name + "</a></dd>";
    }
    return subStr;
}


function xuanran() {
    layui.use(['element', 'layer'], function () {
        var element = layui.element,
        layer = layui.layer;

        var layFilter = $("#navBarId").attr('lay-filter');
        element.render('nav', layFilter);
        var active = {

            //在这里给active绑定几项事件，后面可通过active调用这些事件
            tabAdd: function (url, id, title) {

                //新增一个Tab项 传入三个参数，分别对应其标题，tab页面的地址，还有一个规定的id，是标签中data-id的属性值
                // var body_url = "pages/" + url + ".html";
                var body_url = url;
                // console.log("要切换的页面地址=" + body_url);

                element.tabAdd('demo', {
                    title: title,
                    content: '<iframe data-frameid="' + id + '" scrolling="auto" frameborder="0" src="' + body_url + '"></iframe>',
                    id: id //规定好的id
                });
                $(".layui-tab-title li[lay-id=" + id + "]").mouseover(function () {
                    var tabId = $(this).attr("lay-id");
                    CustomRightClick(tabId); //给tab绑定右击事件
                    // FrameWH(); //计算ifram层的大小
                });
            },
            tabChange: function (id) {
                //切换到指定Tab项
                element.tabChange('demo', id); //根据传入的id传入到指定的tab项
            },
            tabDelete: function (id) {
                element.tabDelete("demo", id);//删除
            },
        };

        active.tabAdd('home/home.html', 11,'系统首页');
        active.tabChange(11);
        // //当点击有site-demo-active属性的标签时，即左侧菜单栏中内容 ，触发点击事件
        $(document).on('click','.site-demo-active', function () {

                var dataid = $(this);
                if (dataid.children().length <= 1) {
                    if ($(".layui-tab-title li[lay-id]").length <= 0) {

                        //如果比零小，则直接打开新的tab项
                        // console.log("没有tab页，新建tab页");
                        // console.log(dataid.attr("data-src"))
                        active.tabAdd(dataid.attr("data-src"), dataid.attr("data-menuId"), dataid.attr("data-title"));
                    } else {
                        //否则判断该tab项是否以及存在
                        var isData = false; //初始化一个标志，为false说明未打开该tab项 为true则说明已有
                        $.each($(".layui-tab-title li[lay-id]"), function () {
                            //如果点击左侧菜单栏所传入的id 在右侧tab项中的lay-id属性可以找到，则说明该tab项已经打开
                            if ($(this).attr("lay-id") == dataid.attr("data-menuId")) {
                                // console.log("如果点击左侧菜单栏所传入的id 在右侧tab项中的lay-id属性可以找到，则说明该tab项已经打开");
                                isData = true;
                            }
                        })
                        if (isData == false) {
                            //标志为false 新增一个tab项
                            // console.log("新增一个tab项")
                            active.tabAdd(dataid.attr("data-src"), dataid.attr("data-menuId"), dataid.attr("data-title"));
                        }
                    }
                    //最后不管是否新增tab，最后都转到要打开的选项页面上
                    active.tabChange(dataid.attr("data-menuId"));
                }
        });


        function CustomRightClick(id) {
            //取消右键  rightmenu属性开始是隐藏的 ，当右击的时候显示，左击的时候隐藏
            $('.layui-tab-title li').on('contextmenu', function () {
                return false;
            })
            $('.layui-tab-title,.layui-tab-title li').click(function () {
                $('.rightmenu').hide();
            });
            //单击取消右键菜单
            $('body,#aaa').click(function () {
                $('.rightmenu').hide();
            });

            //tab点击右键
            $('.layui-tab-title li').on('contextmenu', function (e) {
                var popupmenu = $(".rightmenu");
                popupmenu.find("li").attr("data-id", id); //在右键菜单中的标签绑定id属性

                //判断右侧菜单的位置
                l = ($(document).width() - e.clientX) < popupmenu.width() ? (e.clientX - popupmenu.width()) : e.clientX-25;
                t = ($(document).height() - e.clientY) < popupmenu.height() ? (e.clientY - popupmenu.height()) : e.clientY+30;
                popupmenu.css({
                    left: l,
                    top: t
                }).show(); //进行绝对定位
                return false;
            });
        }
        $(".rightmenu li").click(function () {
            //当前的tabId
            var currentTabId = $(this).attr("data-id");

            if ($(this).attr("data-type") == "closeOthers") { //关闭其他
                var tabtitle = $(".layui-tab-title li");
                $.each(tabtitle, function (i) {
                    if ($(this).attr("lay-id") != currentTabId && $(this).attr("lay-id") != 11) {
                        active.tabDelete($(this).attr("lay-id"))
                    }
                })
            } else if ($(this).attr("data-type") == "closeAll") { //关闭全部
                var tabtitle = $(".layui-tab-title li");
                $.each(tabtitle, function (i) {
                    if ($(this).attr("lay-id") != 11) {
                        active.tabDelete($(this).attr("lay-id"))
                    }

                })

            } else if ($(this).attr("data-type") == "refresh") { //关闭当前

                active.tabDelete($(this).attr("data-id"));

            }

            $('.rightmenu').hide();
        });
        // 导航栏与tab卡的联动
        element.on('tab(demo)',function (data){
            let laid = $(this).attr('lay-id');
            var tabtitle = $(".layui-nav a");

            $.each(tabtitle, function (i) {

                if ($(this).attr("data-menuid") == laid) {

                    $(this).parent().addClass('layui-this');
                    $(this).parents('.layui-nav-item').addClass('layui-nav-itemed');

                }else{

                    $(this).parent().removeClass('layui-this');
                    $("iframe[data-frameid='11']").parent().css('display','none')

                }

            })
        });
        //主页面点击回调
        $('#home').click(function (){

            // var a = $('#demo')
            // var b = $('.layui-nav .layui-this')
            // console.log('demo：' , a)
            // console.log('layui-this：', b)
            $('#demo .layui-this').removeClass('layui-this');
            $('.layui-nav .layui-this').removeClass('layui-this');


            $(".layui-nav a[data-menuid='11']").parents('.layui-nav-item').addClass('layui-nav-itemed');
            $("a[data-menuid='11']").parent().addClass('layui-this');
            $("li[lay-id='11']").addClass('layui-this');
            $("iframe[data-frameid='11']").parent().css('display','block')

        })
//给常用列表点击监听
        $("#used li").on("click",function (){
            let attr = $(this).attr("data-menuid");
            let attr1 = $(this).attr("data-title");
            let attr3 = $(this).attr("data-src");
          var nav =   $(".layui-tab-title li[lay-id]");
            var isData = true;
            $.each(nav,function (){
                let attr2 = $(this).attr('lay-id');
                if (attr2 == attr){
                    isData = false
                }
            })

            if (isData){
                active.tabChange(attr);
                active.tabAdd(attr3,attr,attr1);
                element.tabChange('demo',attr);
            }else {
                element.tabChange('demo',attr);
            }

        })



    })
    // console.log("==列表添加完后再次执行渲染");
}
xuanran()

/*
* @todo 重新计算iframe高度
*/
function FrameWH() {
    $("iframe").width("100%");
    $("iframe").height("100%");
    // var h = $(window).height() - 164;
    // var w = $(window).width() - 400;
    //console.log("高度问题=="+h);
    // $("iframe").css("width", w + "px");
    // $("iframe").css("height", h + "px");
}



